/* Form.h
Michael Zahniser, 2008

Header file for the Form class, which represents a form that is displayed
and edited using the ncurses library.
*/

#ifndef __MZ_FORM_H__
#define __MZ_FORM_H__

#include "Field.h"

#include <string>
#include <list>

using std::string;
using std::list;



class Form {
public:
	// Get the named field. Create it if it does not exist.
	Field &GetField(const string &label);

	bool Run();
	
	
private:
	void Draw() const;
	
	
private:
	list<Field> fields;
};



#endif
